x-extend:
  schema: config-values.yaml
type: object
properties:
  internal:
    type: object
    default: {}
    properties:
      mode:
        type: string
        enum: ["Direct", "DirectWithNodeRoutes", "VXLAN"]
        default: "Direct"
        description: |
          Cilium work mode.

          * - `Direct` - without any packet encapsulation, routes on external router.
          * - `DirectWithNodeRoutes` - without any packet encapsulation,
               create routes to Pods on other Nodes.
               All Nodes must be located in the same L2 domain.
          * - `VXLAN` - VxLAN encapsulation.
      masqueradeMode:
        type: string
        enum: ["Netfilter", "BPF"]
        default: "BPF"
        description: |
          Cilium masquerade work mode.

          * - `Netfilter` - use kernel Netfilter(iptables/nf_tables).
          * - `BPF` - use cilium BPF.
      vmCIDRs:
        type: array
        description: |
          List of CIDRs used to allocate static IP addresses for Virtual Machines from virtualization module.
          These CIDRs will be pased to ip-masq-agent to not masquerade trafic to them.
        x-examples:
        - ["10.10.10.0/24", "10.10.20.0/24"]
        items:
          type: string
      isIstioCNIEnabled:
        type: boolean
        default: false
        description: |
          The switch indicates whether istio-cni is enabled in the cluster and
          whether it is necessary to enable the compatibility mode for istio-cni.
          (cni-exclusive: false)
      hubble:
        type: object
        default: {}
        properties:
          certs:
            type: object
            default: {}
            properties:
              ca:
                type: object
                default: {}
                properties:
                  cert:
                    type: string
                    x-examples: ["---CERT PEM---"]
                  key:
                    type: string
                    x-examples: ["---KEY PEM---"]
              server:
                type: object
                default: {}
                properties:
                  cert:
                    type: string
                    x-examples: ["---CERT PEM---"]
                  key:
                    type: string
                    x-examples: ["---KEY PEM---"]
                  ca:
                    type: string
                    x-examples: ["---ROOT PEM---"]


